Almost all data processing systems, including mobile devices, include some manner of interacting with a user. For example, a display device is used with a data processing system for presenting a visual user interface to a user, an audio device is used with the data processing system for presenting audible user interface to the user, and tactile devices are used for presenting a touch-based interface to the user. Within the scope of the disclosure, the term “user interface” refers to a user interface of any of these types or other types as may be suitable for a particular implementation.
Accessibility features are features of a user interface that are designed or configured to assist a user in interacting with a particular aspect of the given user interface. For example, a large default font size is an example accessibility feature that makes interacting with a user interface easier for those users who have weak eyesight. Similarly, an audio readout accessibility feature assists users with vision impairment to interact with a user interface. A tactile feedback, such as vibration of a mobile device, is another example accessibility feature for users who have temporary, circumstantial, or permanent auditory impairment.
A usability feature is a feature of a user interface that is designed or configured to assist a user in interacting with a particular aspect of the given user interface under certain circumstance of usage. For example, a stationary user generally has better control on motor skills than a mobile user. Accordingly, small fonts are easily readable to the stationary user but not to a moving user. Light contrasts are similarly better perceived in evenly and moderately lit environments and high contrasts are better for sharp or bright lighting conditions. Similarly, accessibility features are useful not only for the users with certain impairments but also for users operating a user interface under different circumstances.
Many accessibility and usability features are presently available for use in user interface designs. Often, an application executing on a data processing system presents several user interfaces to the user during the course of using the application. For example, numerous user interfaces in the forms of screen layouts, plugin applications, and tools are presented or called upon during the course of a user using a software application.